package cn.kgm.user.server.struct;

import cn.kgm.user.dto.dto.UserPassLockSaveDTO;
import cn.kgm.user.dto.dto.UserPassLockUpdateDTO;
import cn.kgm.user.dto.entity.UserPassLock;
import cn.kgm.user.dto.query.UserPassLockPageQuery;
import cn.kgm.user.dto.vo.UserPassLockVO;
import org.mapstruct.Builder;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

/**
 * # 技术改变自己 #
 * 用户密码锁定表
 * @author kappi
 * @date   2024-04-08 13:28:48
 */
@Mapper(builder = @Builder(disableBuilder = true))
public interface UserPassLockMappers {
    UserPassLockMappers INSTANCE = Mappers.getMapper(UserPassLockMappers.class);

    /**
     * 将 UserPassLockSaveDTO 映射成 UserPassLock 对象
     *
     * @param source 源对象
     * @return UserPassLock
     */
    UserPassLock mapToEntity(UserPassLockSaveDTO source);

    /**
     * 将 UserPassLockUpdateDTO 映射成 UserPassLock 对象
     *
     * @param source 源对象
     * @return UserPassLock
     */
    UserPassLock mapToEntity(UserPassLockUpdateDTO source);

    /**
     * UserPassLockPageQuery 映射成 UserPassLock 对象
     *
     * @param source 源对象
     * @return UserPassLock
     */
    UserPassLock mapToEntity(UserPassLockPageQuery source);

    /**
     * UserPassLockPageQuery 映射成 UserPassLock 对象
     *
     * @param source 源对象
     * @return UserPassLockVO
     */
    UserPassLockVO mapToEntity(UserPassLock source);

}
